System and method for selection of a reference die

ABSTRACT

A system for selecting reference die images, such as for use with a visual die inspection system, is provided. The system includes a die image comparator, which compares a first die image to a second die image in order to create a difference image that contains only the differences between the two die images. The system also includes a difference image analysis system that receives data from the die image comparator. The difference image analysis system analyzes the difference image and determines whether there are any features of the difference image that indicate that either the first die image or the second die image should not be used as a reference die image.

BACKGROUND

[0001] Semiconductor devices are typically manufactured from ingots of crystalline semiconductor materials that have been sliced into wafers having a predetermined thickness. These wafers are then cut into dies having predetermined dimensions, such as 0.5 cm. by 0.5 cm. The dies are then etched and oxidized using various chemicals and masks, such that predetermined circuits are created on the dies. Such processes are well known in the art.

[0002] During the manufacture of such devices, defects or flaws may be formed or inadvertently created on one or more dies before or after they have been cut from the wafer. Such defects or flaws will typically cause the device to misoperate. It is desirable to detect such defective or flawed dies before the dies are shipped to a customer. Although systems and methods have been implemented that may be used to detect defective or flawed dies, such systems and methods require an operator to set up each wafer, such as by selecting dies that are not defective that are then used to create a model. The model may then be compared with other dies of the wafer. The systems and methods then perform the comparison between the model die and each die of the silicon wafer, thus reducing the time required to check each die of the silicon wafer as compared with manual inspection of each die.

[0003] While such inspection systems have decreased the time and operator involvement that are required to inspect each die of a silicon wafer, operator setup of the inspection system now occupies a significant portion of the time required to inspect the dies. Accordingly, there has been a need for a system and method for detecting defective or flawed dies that does not require an operator to manually select model dies for each new wafer.

SUMMARY OF THE INVENTION

[0004] The present invention provides improved systems and methods for selecting multiple dies from one or more wafers of semiconducting material that have allowable levels of defects. These selected dies are then used to create a comparison reference to detect defective or flawed dies that have been formed on the wafer of semiconducting material.

[0005] In accordance with one aspect of the present invention, a system for selecting reference die images, such as for use with a visual die inspection system, is provided. The system includes a die image comparator, which compares a first die image to a second die image to create a difference image that contains only the differences between the two die images. The system also includes a difference image analysis system that receives data from the die image comparator. The difference image analysis system analyzes the difference image and determines whether there are any features of the difference image that indicate whether the first die image or the second die image should not be used as a reference die image.

[0006] In accordance with another aspect of the present invention, a system for inspecting dies is provided. The system includes a camera that is used to obtain images of one or more dies. A reference die detection system is connected to the camera. The reference die detection system determines whether a first die image and a second die image may be used as reference images.

[0007] Still further in accordance with the invention, there is provided a method for selecting a reference die image. The method includes subtracting a first die image from a second die image to create a difference image. For example, a numerical value associated with each picture element of the first die image may be subtracted from the numerical value associated with each corresponding picture element of the second die image in order to create the numerical value of each corresponding picture element of the difference image. It is then determined whether the difference image contains unacceptable data.

[0008] The die selection system of the present invention eliminates the need for an operator to manually view and select dies that will be used for comparison with other dies that have been formed on a wafer to determine whether such dies contain surface flaws or defects that are indicative of devices that will misoperate.

[0009] Those skilled in the art will further appreciate the advantages and superior features of the invention together with other important aspects thereof on reading the detailed description which follows in conjunction with the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0010]FIG. 1 is a diagram of a die test system in accordance with an exemplary embodiment of the present invention;

[0011]FIG. 2 is a block diagram of a reference die detection system in accordance with an exemplary embodiment of the present invention;

[0012]FIG. 3 is a block diagram of a difference analyzer in accordance with an exemplary embodiment of the present invention;

[0013]FIG. 4a is a diagram showing a first die image, a second die image, and the resulting difference image, such as would be created by an image comparator of the die detection system of FIG. 2;

[0014]FIG. 4b is an example of a histogram showing the data variations, such as brightness variations, of the difference image as a function of frequency;

[0015]FIG. 5 is a flowchart of a method for selecting reference die images in accordance with an exemplary embodiment of the present invention;

[0016]FIG. 6 is a flowchart of a method for analyzing brightness data in accordance with an exemplary embodiment of the present invention; and

[0017]FIG. 7 is a flowchart of a method for analyzing other image data in accordance with an exemplary embodiment of the present invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

[0018] In the description which follows, like parts are marked throughout the specification and drawing with the same reference numerals, respectively. The drawing figures may not be to scale and certain components may be shown in generalized or schematic form and identified by commercial designations in the interest of clarity and conciseness.

[0019]FIG. 1 is a diagram of a die test system 100 in accordance with an exemplary embodiment of the present invention. The die test system 100 may include, for example, software systems that operate on a WAV-1000 Automatic Visual Inspection System, manufactured by Semiconductor Technologies & Instruments, Inc., that is used for the inspection of semiconductor wafers, or other suitable programmable visual inspection systems.

[0020] The die test system 100 includes a die table 102, a controller 104, a camera 106, and a light source 108. A wafer handling system 110 of the die table 102 is operable to move a wafer support 112, which holds a silicon wafer 114. Typically, the silicon wafer 114 is formed into one or more dies prior to being placed on the wafer handling system 110.

[0021] The controller 104 is a programmable processor that may include a general purpose processing platform. For example, the controller 104 may include a Pentium processor or other suitable general purpose processor, and additional hardware or software such as an operating system, random access memory, video co-processors, field programmable gate arrays, or other suitable hardware or software. A reference die detection system 116 operates on controller 104 and may be implemented in hardware, software, or a suitable combination of hardware and software. The reference die detection system 116 is preferably a software application operating on the controller 104.

[0022] In operation, the die test system 100 is used to inspect dies formed from the silicon wafer 114, such as to detect dies having defects that may render the die unacceptable for use. The silicon wafer 114 is moved by the wafer handling system 110 so as to position each individual die within the fixed focal field of the camera 106. Images are capture by the camera 106 and are transferred to the controller 104. The light source 108 is used to maintain a controllable reference light, such that the image brightness data and other image data of each die of the silicon wafer 114 may be normalized so as to remain constant. In this manner, spurious identification of a good die as being imperfect or flawed as a result of lighting variations is minimized.

[0023] The die images obtained by the camera 106 are compared by software systems operating on the controller 104 to a reference die image, such that die images bearing defects may be detected. The reference die detection system 116 is used to form the reference image, such that operator handling and selection of reference dies is not required. The reference die detection system 116 generates data that is used by the controller 104 to cause the silicon wafer 114 to be moved in a predetermined manner, such that the individual dies of the silicon wafer 114 may be selected as reference dies. For example, the reference die detection system 116 may compare a first and second die of silicon wafer 114, and may then determine whether the first and second die contain defects.

[0024] If it is determined that the first and second die contain defects, then the reference die detection system 116 generates data that causes the controller 104 to advance the silicon wafer 114 to compare the third and fourth die of silicon wafer 114. The third and fourth die images are then compared to determine whether they contain any defects. This process is repeated until a sufficient number of dies from sufficient predetermined locations of the silicon wafer 114 have been selected to form a suitable reference image. Selection of images from various locations of silicon wafer 114 is preferable, so as to allow the die test system 100 to inspect each die of the silicon wafer 114 for defects without generating spurious rejections due to normal variations.

[0025] In this manner, the reference die detection system 116 may be used to perform reference die selection. The reference die detection system 116 thus eliminates the need for operators to manually select reference dies, which decreases the amount of time required for the processing of each silicon wafer 114, and also decreases the amount of operator involvement required to operate the die test system 100.

[0026]FIG. 2 is a block diagram of the reference die detection system 116 in accordance with an exemplary embodiment of the present invention. The reference die detection system 116 includes the light source 108, the camera 106, the wafer handling system 110, an image storage system 204, and a processor 202.

[0027] The processor 202 is a suitable processing platform for operating a software system, such as a Pentium processor or other suitable general purpose computing platform. The image storage system 204 includes a system controller 206, an image digitizer 208, a difference analyzer 210, and an image comparator 212, which may be implemented in hardware, software, or a suitable combination of hardware and software, but which are preferably software programs operating on the processor 202.

[0028] The system controller 206 is coupled to the wafer handling system 110, the light source 108, and the image digitizer 208. As used in this application, the term coupled means to form a physical connection (such as a data bus or a copper connection), a virtual connection (such as by reference to dynamically allocated memory locations in a random access memory), logical connections (such as through logic circuits of a processor or other logic device), or by other suitable mechanisms well known to those of ordinary skill in the art. The system controller 206 is operable to control the position of a die on the wafer handling system 110 in response to data received from the image digitizer 208. Likewise, the system controller 206 is operable to control the light source 108 based upon image data received from the image data digitizer 208. In this manner, the brightness and other image data of each die image may be normalized so that die images are not rejected as a result of lighting variations or other lighting conditions that do not directly affect die quality.

[0029] The image digitizer 208 is coupled to the camera 106, the image storage system 204, and the image comparator 212. The image digitize 208 receives images generated by the camera 106 and converts the images into a digital image of the die of the silicon wafer 114 that is currently in the focal field of the camera 106. The image digitizer 208 is operable to determine the boundaries of each individual die so as to ensure that the die image is complete, and to record gray scale brightness data and other image data, such as color data, for the individual picture elements or pixels of the camera 106. The image digitizer 208 stores this data on the image storage device 204.

[0030] The image storage device 204 is a data storage medium, such as a random access memory, magnetic media, optical media, or other suitable date storage media. The image storage device 204 may be virtual memory locations within the processor 202 that are dynamically allocated by the processor 202. The image storage device 204 is coupled to the image digitizer 208 and the image comparator 212.

[0031] The image comparator 212 is coupled to the image digitizer 208, the image storage device 204, and the difference analyzer 210. The image comparator 212 is operable to receive digitized data for a first die image and a second die image, and to compare the two images on a pixel by pixel basis so as to generate a difference image. For example, if each of the pixels of the first die image and the second die image have identical values, then the image comparator 212 will return a difference image having pixel values of “0” for each pixel. Because the “0” pixel value typically corresponds to the most black shade, the image comparator 212 may also be configured to return pixel values having other suitable values when the difference between pixel values is zero, such as, for example, 255 in an 8 bit pixel system, 15 in a 4 bit pixel system, or other suitable values in a manner well known to those of ordinary skill in the art.

[0032] The difference analyzer 210 is coupled to the image comparator 212, and receives the difference image data generated by the image comparator 212. The difference analyzer 210 is operable to determine from the difference data whether the differences between the first die and the second die are indicative of defects, flaws, or other unacceptable conditions that would render one of the first die image or the second die image unacceptable for use as a reference die image. For example, the difference analyzer 210 may tabulate brightness data and other image data, and may determine from the brightness data and other image data whether unacceptable deviations exist between the brightness characteristics and other image characteristics of the first die image or the second die image. An unacceptable brightness or other image data variation may consist of a brightness or other image data difference that exceeds a predetermined magnitude, that occurs in excess of a predetermined frequency, that occurs in excess of a predetermined acceptable range for brightness and other image variations, or that exceeds other predetermined criteria. Likewise, the difference analyzer 210 may also or alternatively analyze the coordinates of the brightness data and other image data to determine the size, density, or other suitable characteristics of the brightness and the other image data anomalies. The difference analyzer 210 is also coupled to the system controller 206, and generates data for the system controller 206 that will cause the system controller 206 to advance the wafer handling system 110 to the next predetermined die location.

[0033] In operation, the reference die detection system 116 is used to select reference dies from a wafer for use with a die inspection system. The reference die detection system 116 uses predetermined criteria for determining whether variations in brightness and other image data for pixels of a first die image and a second die image will prevent either of the die images from being used as a reference die image. In this manner, the reference die detection system 116 may be used to select acceptable die images from a silicon wafer for use in forming the reference die image. Alternatively, the reference die detection system 116 may move to predetermined locations of the silicon wafer so as to select a suitable combination of die images from predetermined areas of the silicon wafer to form the reference image data.

[0034]FIG. 3 is a block diagram of a difference analyzer 210 in accordance with an exemplary embodiment of the present invention. The difference analyzer 210 may be implemented in hardware, software, or a suitable combination of hardware and software, and is preferably operating code that operates on a general purpose processor of a visual inspection system.

[0035] The difference analyzer 210 includes a data sort system 302. The data sort system 302 may be implemented in hardware, software, or a suitable combination of hardware and software, and is preferably software that operates on a general purpose processor. The data sort system 302 receives image comparator data from a comparator system, such as the image comparator 212. The data sort system 302 stores the comparator data in a brightness table 304, an other data table 306, or other suitable table or tables depending on the type of data used. The data sort system 302 may also sort the brightness data and the other image data so as to tabulate the brightness magnitude and other data magnitude as a function of the frequency of occurrence of pixels having each brightness magnitude value and other data magnitude value.

[0036] The brightness table 304 may be implemented in hardware, software, or a suitable combination of hardware and software, and is preferably software that operates on a general purpose processor. The brightness table 304 contains gray scale brightness data from the difference image created by comparing the first die image and the second die image. For example, the brightness table 304 may contain a large amount of data representing the absolute value of the difference between individual pixels. In this exemplary embodiment, the brightness data and other image data for each pixel of the first die image and the second die image is compared, and the absolute magnitude of brightness difference and other image data difference is determined. The brightness table 304 thus would contain the brightness data for the difference image. For two identical die images, the brightness data will be zero which corresponds to black on a gray scale. On an 8 bit gray scale, 255 represents the brightest shade. Thus the brightness table 304 includes a tabulation of pixel element gray scale values, for example, ranging from 0 to 255 for an 8 bit gray scale image processing system.

[0037] The other image data table 306 may be implemented in hardware, software, or a suitable combination of hardware and software, and is preferably software that operates on a general purpose processor. The other image data table 306 contains image data, such as color data, for the difference image formed by comparing the first die image and the second die image. Other image data values may also be assigned on an 8 bit system, such that the other image data value ranges from 0 to 255. Therefore, for two identical images, having identical other image data values, the difference image will have values of zero. The other image data table 306 may also or alternatively contain a tabulation of all pixel element other image data values, for example, ranging from 0 to 255 for an 8 bit other image data image processing system.

[0038] The slope analyzer 308 may be implemented in hardware, software, or a suitable combination of hardware and software, and is preferably software that operates on a general purpose processor. The slope analyzer 308 is coupled to the brightness table 304 and the other image data table 306. The slope analyzer 308 is operable to determine the change in slope for increasing values of brightness data and other image data in the brightness table 304 and the other image data table 306, respectively. For example, as brightness increases from a value of 0 to a value of 255 in an 8 bit brightness gray scale system, the slope of the plot of frequency versus brightness should be negative over the entire range from 0 to 255. A change in the slope from negative to positive indicates the existence of area having a greater brightness than surrounding areas of the difference image. Bright areas of the difference image correspond to non-uniform areas from the first die image and second die image that are used to create the difference image. Thus, a change in slope from negative to positive may be indicative that either the first die image or the second die image should not be used as a reference die image. The slope analyzer 308 is used to determine whether such areas exist for either the brightness data in the brightness table 304 or the other image data in the other image data table 306.

[0039] The dimension analyzer 310 may be implemented in hardware, software, or a suitable combination of hardware and software, and is preferably software that operates on a general purpose processor. The dimension analyzer 310 is coupled to the slope analyzer 308. The dimension analyzer 310 is used to analyze the dimensions of areas having brightness or other image data values that are greater than expected. For example, if the slope analyzer 308 determines that brightness or other image data excursions exist, then the dimension analyzer 310 analyzes the coordinate data of the pixels that define the brightness and other image data excursions to determine the size of the potentially affected area. Predetermined criteria may be used to accept or reject areas having such brightness or other image data excursions. For example, it may be analytically or empirically determined that brightness and other image data excursions ranging in size from 0 to 1000 pixels and having major dimensions of less than 1 micron do not result in device operational defects having an unacceptable frequency of occurrence. In this manner, the dimension analyzer 310 may be calibrated to accept brightness or other image data defects having dimensions within a previously determined range and to reject brightness and other image data defects having dimensions outside of this range.

[0040] The density analyzer 312 may be implemented in hardware, software, or a suitable combination of hardware and software, and is preferably software that operates on a general purpose processor. The density analyzer 312 determines the density of areas that exceed acceptable brightness or other image data values by using the coordinate data of the pixels associated with such areas. If the absolute dimension of areas having brightness or other image data excursions is acceptable, there may still be an unacceptable density of such areas within a region of either the first die image or the second die image. The density analyzer 312 determines whether the number of brightness or other image data excursion areas exceeds predetermined acceptable levels. For example, in a 100 micron by 100 micron area, it may be determined that three brightness or other image data excursions having absolute dimensions of less than 1 micron by 1 micron are acceptable, but that any additional areas will result in an unacceptable probability of device misoperation. The density analyzer 312 is operable to determine the size and number of brightness and other image data excursion areas in regions of the difference image, and to determine whether the first die image and the second die image contain an unacceptable number of brightness or other image data excursion areas.

[0041] In operation, the difference analyzer 210 analyzes brightness and other image data created by comparing a first die image with a second die image to create a difference image. Difference analyzer 210 first determines whether there are any brightness or other image data excursions, based on a tabulation of the frequency of brightness data and other image data. If it is determined that brightness and other image data excursions exist, then the difference analyzer 210 determines whether the absolute size dimensions or density of such brightness and other image data excursion areas exceed predetermined allowable levels. A pass or fail response is then transmitted to the system controller to indicate whether to accept the first die image and second die image as reference images, or to reject both die images and select other die images.

[0042]FIG. 4a is a diagram showing a first die image 402, a second die image 404, and the resulting difference image 406 from a comparison of the first die image 402 and the second die image 404, such as would be created by the image comparator 212 of FIG. 2. Both the first die image 402 and the second die image 404 include bond pads (which are arranged around the periphery of the image) and semiconductor devices (which are included within the region defined by the bond pads). Each bond pad as shown further includes a probe mark. Probe mark variations between the first die image 402 and the second die image 404 result in the white circles surrounding the perimeter of the difference image 406. Likewise, edge variations of the devices contained within the first die image 402 and the second die image 404 result in the lighter areas contained within the difference image 406.

[0043] In operation, areas having known non-conformities, such as the probe marks of the bond pads of the first die image 402 and the second die image 404, may be removed to prevent misleading brightness or other image data variations. The remaining areas contained within the difference image 406 are then tabulated as a function of frequency and brightness absolute magnitude, or frequency and other image data absolute magnitude. In this manner, histogram data may be created that provides one measure by which the difference image 406 may be analyzed so as to determine whether the first die image 402 and second die image 404 may be used as reference die images.

[0044]FIG. 4b is an example of a histogram showing the brightness variations or the other image data variations as a function of frequency. For die images that are similar, the brightness and/or other image data values having the greatest frequency will be closest to the zero value, because the difference image contains the absolute magnitude of the pixel differences for the first die image 402 and the second die image 404. As brightness and other image data absolute magnitude increase, the frequency drops off until point 408 is reached, at which point the brightness or other image data values start to increase. Point 408 marks the beginning of a first anomalous region having a length L1, after which the brightness and/or other image data values decrease back to a nominal level. The brightness and/or other image data values then begin to increase again starting at point 410, which marks the beginning of a second anomalous region having a length L2. The brightness and/or other image data values then decrease until the maximum brightness and/or other image data value of 255 is reached.

[0045] In operation, it may be analytically or empirically determined that brightness and/or other image data variation regions having a predetermined length, such as a length that exceeds L1, will result in dies with an unacceptable frequency of misoperation. Likewise, it may also be determined that the increase in the frequency of occurrence of brightness and/or other image data variations, or other suitable factors, is indicative of a potentially unacceptable frequency of misoperation of either the first die or the second die. The histogram of FIG. 4b is used to either identify such anomalous areas so as to accept or reject die images for use as a reference die image, or to identify areas requiring further analysis such as for anomaly dimension or anomaly density determination.

[0046]FIG. 5 is a flowchart of a method 500 for selecting reference die images in accordance with an exemplary embodiment of the present invention. Method 500 may be used in a visual inspection system or in other suitable systems for selecting reference die images without requiring manual operator intervention.

[0047] Method 500 begins at step 502, where a first die is selected. For example, the number of dies that will be formed from a wafer may be predetermined, and the orientation of the wafer may be used to identify and select the first die. The orientation of all other dies of the wafer may then be known, such that the progression of die image testing may be predetermined. Other suitable systems and methods for selecting dies for analysis may also be used.

[0048] After the first die is selected at step 502, the first die image data is recorded at step 504. For example, a digital camera having a two dimensional field of 1,000×1,000 pixels may be used to record brightness data and/or other image data, such as 8 bit data ranging from a value of “0” for the darkest shade to a value of “255” for the brightest shade. This brightness data and/or other image data for the first image is stored at step 506. The method then proceeds to step 508, where a second die is selected. The image data for the second die is recorded at step 510, and is stored at step 512 in a suitable data storage device.

[0049] At step 514, the first die image and second die image are compared on a pixel-by-pixel basis. For example, the other image data for each pixel of the first die image may be subtracted from the other image data for each pixel of the second die image, such that the resulting difference image other image data magnitude is greater than zero when a difference in the other image data between the first die image and second die image exists. A similar process is used for the brightness data. The difference magnitude data is stored in a difference image data file at step 516.

[0050] The method then proceeds to step 518, where the difference image data is analyzed. For example, various measures may be analytically or empirically determined for accepting or rejecting dies based upon number of brightness and/or other image data variations, the magnitude of brightness and/or other image data variations, or other criteria. Likewise, certain other image data variations and/or brightness variations may require additional analysis, as they may fall within a range of potentially acceptable brightness or other image data variations.

[0051] The method then proceeds to step 520, where it is determined whether the other image data variations are acceptable. If the other image data variations are not acceptable, the method proceeds to step 522 and both dies are rejected. If the other image data variations are determined to be acceptable at step 520, the method proceeds to step 524 where it is determined whether the brightness variations are acceptable. If the brightness variations are determined to be not acceptable, then the method proceeds to step 526 and both dies are rejected. If it is determined at step 524 that brightness variations are acceptable, the method proceeds to step 528 and both dies are accepted for use as reference images.

[0052] In operation, method 500 is used to analyze die images from a silicon wafer so as to select die images for use in forming a reference image that may be used in subsequent visual inspection of the other dies formed from the same silicon wafer. Method 500 may be used to test predetermined dies so as to select dies for use in forming the reference image. For example, dies may be selected from locations around the periphery of a wafer, and locations within the center of a wafer, based on known variations and brightness and other image data. Method 500 allows a visual inspection system to select reference dies without requiring operator intervention or selection of reference dies, based upon known acceptable variations between dies. If the two dies selected for testing have brightness or other image data variations that exceed known acceptable levels, then both dies may be rejected for use as reference images, even though the dies may ultimately be determined to be acceptable for use, such as by passing subsequent visual inspection. Likewise, each die may be further tested against a third die, or other techniques may be used to select reference image dies.

[0053]FIG. 6 is a flowchart of a method 600 for analyzing brightness data in accordance with an exemplary embodiment of the present invention. Method 600 may be used in conjunction with the difference analyzer 210 of FIG. 2 or with other suitable systems.

[0054] Method 600 begins at step 602, where brightness data from a difference image is sorted. The method then proceeds to step 604, where the brightness frequency is tabulated. For example, a frequency histogram of brightness magnitude may be created at step 604. The method then proceeds to step 606, where it is determined whether there is a slope change from negative to positive over the tabulated brightness frequency data. If no slope change from negative to positive occurs, the method proceeds to step 608 and both dies are accepted for use as reference dies. Otherwise, the method proceeds to step 610.

[0055] At step 610, the length of any brightness excursion that resulted in an increase in slope is determined. For example, the brightness excursion may extend over a range of gray scale brightness or other image data values. In an eight-bit system, for example, the gray scale values range from 0 to 255. In accordance with exemplary method 600, the length along the gray scale axis of the brightness excursion is determined at step 610. The method then proceeds to step 612 where it is determined whether the length is acceptable. For example, it may be analytically or empirically determined that a brightness excursion having a length that exceeds a predetermined number of points on a gray scale will result in devices that misoperate with an unacceptable frequency. If it is determined at step 612 that the length is unacceptable, the method proceeds to step 614 and both dies are rejected for use as reference images. If it is determined that the length of the brightness excursion is acceptable at step 612, the method proceeds to step 616.

[0056] At step 616, the defect dimensions from the pixel coordinates of the pixels that define the brightness excursion are determined. For example, a defect may be a line, a circle, a square, an irregular shape, or other shapes. The shape of such defects is determined at step 616, and the method proceeds to step 618. At step 618 it is determined whether the dimensions of the defect are acceptable. For example, it may be analytically or empirically determined that defects having a length and width that exceed a certain predetermined value, such as five microns, produce devices that have an unacceptable failure probability. If the dimensions are determined to be unacceptable at step 618, the method proceeds to step 620 and both die images are rejected for use as reference images. Otherwise, the method proceeds to step 622.

[0057] At step 622, the defect density is determined from the defect coordinates. For example, it may be determined analytically or empirically that a predetermined number of smaller defects within a larger area will result in a device that has an unacceptable failure probability. After the defect density is determined at step 622, the method proceeds to step 624 where it is determined whether the density of defects is acceptable. If the density of defects is not acceptable, the method proceeds to step 626 and both dies are rejected for use as reference images. Otherwise, the method proceeds to step 628 and both dies are accepted for use as reference images.

[0058] In operation, method 600 is used to analyze difference image data created by comparing a first die image and a second die image. The difference image is analyzed to determine whether to accept or reject both the first die and second die as potential reference images for subsequent visual inspection of dies formed from the wafer. Method 600 may be used in a system such as the difference analyzer 210 or in other suitable systems of visual inspection systems.

[0059] Method 600 uses predetermined analytically or empirically developed criteria for accepting or rejecting die images so as to select reference die images for subsequent visual inspection of other dies that have been formed from the silicon wafer. Accordingly, the sensitivity for allowable defects for such dies is typically set to a much higher threshold than the allowable sensitivity for defects for variations between the reference die image and individual dies tested on the wafer. Thus, even though differences between two dies may result in the die images being rejected for the purpose of use as a reference die, each die may subsequently be determined to be acceptable for use in production.

[0060]FIG. 7 is a flowchart of a method 700 for analyzing other image data in accordance with an exemplary embodiment of the present invention. Method 700 may be used in conjunction with the difference analyzer 210 of FIG. 2 or with other suitable systems, and uses image data other than brightness that may be used to perform inspection of dies. For example, infrared light, ultraviolet light, or light of predetermined color may be used to detect defects or flaws that may not be detected as well by simple brightness variations.

[0061] Method 700 begins at step 702, where image data from a difference image is sorted. The method then proceeds to step 704, where the image data frequency is tabulated. For example, a frequency histogram of image data magnitude may be created at step 704. The method then proceeds to step 706, where it is determined whether there is a slope change from negative to positive over the tabulated image data frequency data. If no slope change from negative to positive occurs, the method proceeds to step 708 and both dies are accepted for use as reference dies. Otherwise, the method proceeds to step 710.

[0062] At step 710, the length of any image data excursion that resulted in an increase in slope is determined. For example, the image data excursion may extend over a range of image data values. In an eight-bit system, for example, the image data values would range from 0 to 255. In accordance with the exemplary method 700, the length along the axis of the image data excursion is determined at step 710. The method then proceeds to step 712 where it is determined whether the length is acceptable. For example, it may be analytically or empirically determined that an excursion for the image data being used that has a length that exceeds a predetermined number of points on the image data scale will result in devices that misoperate with an unacceptable frequency. If it is determined at step 712 that the length is unacceptable, the method proceeds to step 714 and both dies are rejected for use as reference images. If it is determined that the length of the image data excursion is acceptable at step 712, the method proceeds to step 716.

[0063] At step 716, the defect dimensions from the pixel coordinates of the pixels that define the image data excursion are determined. For example, a defect may be a line, a circle, a square, an irregular shape, or another shape. The shape of such defects is determined at step 716, and the method proceeds to step 718. At step 718 it is determined whether the dimensions of the defect are acceptable. For example, it may be analytically or empirically determined that defects having a length and width that exceed a certain predetermined Value, such as five microns, produce devices that have an unacceptable failure probability. If the dimensions are determined to be unacceptable at step 718, the method proceeds to step 720 and both die images are rejected for use as reference images. Otherwise, the method proceeds to step 722.

[0064] At step 722, the defect density is determined from the defect coordinates. For example, it may be analytically or empirically determined that a predetermined number of smaller defects within a larger area will result in a device that has an unacceptable failure probability. After the defect density is determined at step 722, the method proceeds to step 724 where it is determined whether the density of defects is acceptable. If the density of defects is not acceptable, the method proceeds to step 726 and both dies are rejected for use as reference images. Otherwise, the method proceeds to step 728 and both dies are accepted for use as reference images.

[0065] In operation, method 700 is used to analyze difference image data created by comparing a first die image and a second die image. The difference image is analyzed to determine whether to accept or reject both the first die and second die as potential reference images for subsequent visual inspection of dies formed from the wafer. Method 700 may be used in a system such as the difference analyzer 210 or in other suitable systems of visual inspection systems.

[0066] Method 700 uses predetermined analytically or empirically developed criteria for accepting or rejecting die images so as to select reference die images for subsequent visual inspection of other dies that have been formed from the silicon wafer. Accordingly, the sensitivity for allowable defects for such dies is typically set to a much higher threshold than the allowable sensitivity for defects for variations between the reference die image and individual dies tested on the wafer. Thus, even though differences between two dies may result in the die images being rejected for the purpose of use as a reference die, each die may subsequently be determined to be acceptable for use in production.

[0067] Although preferred and exemplary embodiments of reference die selection systems and methods for selecting reference dies have been described in detail herein, those skilled in the art will also recognize that various substitutions and modifications may be made to the systems and methods without departing from the scope and spirit of the appended claims. 

What is claimed is:
 1. A system for selection of a reference die image comprising: a die image comparator operable to create a difference image based upon a first die image and a second die image; and a difference image analysis system coupled to the die image comparator, the difference image analysis system operable to analyze the difference image and to determine whether the first die image and the second die image may each be used as the reference die image.
 2. The system of claim 1 further comprising a die imaging system coupled to the die image comparator, the die imaging system operable to create a digital representation of a die.
 3. The system of claim 1 further comprising a die image storage system coupled to the die image comparator, the die image storage system operable to store data representative of the first die image and the second die image.
 4. The system of claim 1 wherein the difference image analysis system further comprises a slope detector, the slope detector operable to determine whether the slope of a histogram changes from negative to positive.
 5. The system of claim 1 wherein the difference image analysis system further comprises a size detector, the size detector operable to determine whether a size of an anomalous region exceeds a predetermined allowable size.
 6. The system of claim 1 wherein the difference image analysis system further comprises a density detector, the density detector operable to determine whether a number of anomalous regions per unit area exceeds a predetermined allowable number of anomalous regions per unit area.
 7. A system for inspecting dies comprising: a camera configured to obtain an image of one or more dies; and a reference die detection system coupled to the camera, the reference die detection system operable to determine whether a first die image and a second die image may be used as reference images.
 8. The system of claim 7 wherein the reference die detection system further comprises an image comparator operable to produce a difference image from the first die image and the second die image.
 9. The system of claim 8 wherein the reference die detection system further comprises a difference analyzer coupled to the image comparator, the difference analyzer operable to determine whether the difference image contains unacceptable features.
 10. The system of claim 9 wherein the difference analyzer further comprises a data sorter that is operable to receive brightness data associated with a plurality of pixels of the difference image and to create a histogram from the brightness data.
 11. The system of claim 10 wherein the difference analyzer further comprises a slope detector coupled to the data sorter, the slope detector operable to determine whether a slope of the brightness data histogram changes from negative to positive as a brightness magnitude increases.
 12. The system of claim 10 wherein the difference analyzer further comprises a dimension analyzer that is operable to determine (a) one or more dimensions for a group of pixels, where each pixel has a brightness magnitude that exceeds a predetermined allowable magnitude, and (b) whether one or more dimensions of the group of pixels exceeds one or more predetermined allowable dimensions.
 13. The system of claim 10 wherein the difference analyzer further comprises a density analyzer that is operable to determine (a) one or more dimensions of two or more groups of pixels, where each group of pixels has a brightness magnitude that exceeds a predetermined allowable magnitude, and (b) whether a density of the two or more groups of pixels per unit area exceeds a predetermined allowable density.
 14. The system of claim 9 wherein the difference analyzer further comprises a data sorter that is operable to receive image data associated with a plurality of pixels of the difference image and to create a histogram from the image data.
 15. The system of claim 14 wherein the difference analyzer further comprises a slope detector coupled to the data sorter, the slope detector operable to determine whether a slope of the image data histogram changes from negative to positive as an image data magnitude increases.
 16. The system of claim 14 wherein the difference analyzer further comprises a dimension analyzer that is operable to determine (a) one or more dimensions of a group of pixels, where each group of pixels has an image data magnitude that exceeds a predetermined allowable magnitude, and (b) whether the dimensions of the group of pixels per unit area exceeds one or more predetermined allowable dimensions.
 17. The system of claim 14 wherein the difference analyzer further comprises a density analyzer that is operable to determine (a) one or more dimensions of two or more groups of pixels, where each group of pixels has an image data magnitude that exceeds a predetermined allowable magnitude, and (b) whether a density of the two or more groups of pixels per unit area exceeds a predetermined allowable density.
 18. A method for selecting a reference die image comprising: subtracting a first die image from a second die image to create a difference image; and determining whether the difference image contains unacceptable data.
 19. The method of claim 18 wherein subtracting the first die image from the second die image comprises subtracting brightness data for each pixel of the first die image from brightness data for a corresponding pixel of the second die image.
 20. The method of claim 18 wherein subtracting the first die image from the second die image comprises subtracting other image data for each pixel of the first die image from other image data for a corresponding pixel of the second die image.
 21. The method of claim 18 wherein determining whether the difference image contains unacceptable data comprises: forming a histogram from difference image data; and determining whether a slope of the histogram changes from negative to positive.
 22. The method of claim 18 wherein determining whether the difference image contains unacceptable data comprises determining whether a size of an area having a brightness deviation exceeds a predetermined allowable size.
 23. The method of claim 18 wherein determining whether the difference image contains unacceptable data comprises determining whether a size of an area having an other image data deviation exceeds a predetermined allowable size.
 24. The method of claim 18 wherein determining whether the difference image contains unacceptable data comprises determining whether a number of areas having brightness deviations exceeds a predetermined allowable number of areas having brightness deviations per unit area.
 25. The method of claim 18 wherein determining whether the difference image contains unacceptable data comprises determining whether a number of areas having other image data deviations exceeds a predetermined allowable number of areas having other image data deviations per unit area.
 26. The method of claim 18 further comprising: selecting two or more difference images, where each difference image is selected from a different predetermined region of the silicon wafer; and combining the two or more difference images to form a reference image for use in comparing with each die of the silicon wafer. 